function _log() {
	case ${1} in
		error)
			shift
			printf '[\x1b[31;1m%s\x1b[m]: %b' ' FAIL ' "${@}"
		;;
		warn)
			shift
			printf '[\x1b[33;1m%s\x1b[m]: %b' ' WARN ' "${@}"
		;;
		info)
			shift
			printf '[\x1b[34;1m%s\x1b[m]: %b' ' INFO ' "${@}"
		;;
		success)
			shift
			printf '[\x1b[32;1m%s\x1b[m]: %b' '  OK  ' "${@}"
		;;
	esac
	echo ''
}

function log_test() {
	for i in warn error info success; do
		log ${i} "This message has type \x1b[1m${i}\x1b[m"
	done
}
